home *** CD-ROM | disk | FTP | other *** search
/ The X-Philes (2nd Revision) / The X-Philes Number 1 (1995).iso / xphiles / hp48_1 / cmosfet < prev    next >
Internet Message Format  |  1995-03-31  |  6KB

  1. From helens!relgyro!shelby!rutgers!usc!zaphod.mps.ohio-state.edu!sdd.hp.com!hp-pcd!hpcvra!prestonb Thu May 17 23:49:35 PDT 1990
  2. Status: RO
  3.  
  4. Article 1668 of comp.sys.handhelds:
  5. Path: helens!relgyro!shelby!rutgers!usc!zaphod.mps.ohio-state.edu!sdd.hp.com!hp-pcd!hpcvra!prestonb
  6. >From: prestonb@hpcvra.CV.HP.COM (Preston Brown)
  7. Newsgroups: comp.sys.handhelds
  8. Subject: Re: CMOS FET EQUATIONS
  9. Message-ID: <21580102@hpcvra.CV.HP.COM>
  10. Date: 17 May 90 18:23:33 GMT
  11. References: <21580101@hpcvra.CV.HP.COM>
  12. Organization: Hewlett-Packard Co., Corvallis, OR, USA
  13. Lines: 170
  14.  
  15. %%HP:T(3)A(D)F(.);  @ Delete anything above this line, save in file MOS
  16. @
  17. @ HP-48SX CMOS FET EQUATIONS
  18. @ Preston Brown
  19.  
  20. @ The following is a set of equations for CMOS field effect transistors.
  21. @ The constants included give a good approximation to common 1.6u processes.
  22. @ The models should be adjusted for your process
  23.  
  24. @ This file may be downloaded directly into your HP-48SX.
  25.  
  26. @ The equations contain process information: each equation uses its own Vt 
  27. @ and K'.  In addition the effective W and the effective L are calculated.  
  28. @ For example in WNEQ 1.52 is subtracted from the width and 0.4 is 
  29. @ subtracted from the length. The L effective and W effective terms assume 
  30. @ the L and W are entered in microns.
  31.  
  32. DIR 
  33. CST
  34. { "WN" \<< WNEQ.EQ STEQ 30 MENU \>> }
  35. { "BN" \<< BNEQ.EQ STEQ 30 MENU \>> }
  36. { "WP" \<< WPEQ.EQ STEQ 30 MENU \>> }
  37. { "BP" \<< BPEQ.EQ STEQ 30 MENU \>> }
  38. }
  39.  
  40. WNEQ.EQ
  41. {
  42.  '-(ID-(Wu-1.52)/(Lu-0.41) * 
  43.  IFTE( VDS > 0 AND VGS > VTNW, 
  44.  IFTE(VDS < VGS-VTNW, 
  45.  WNK/2 * ( 2*(VGS-VTNW) * VDS - SQ(VDS)),
  46.  WNK/2 * SQ(VGS-VTNW))
  47.  ,0))'
  48.  { ID Wu Lu VDS VGS { "WN" \<< BNEQ.EQ STEQ 30 MENU \>>}  }
  49. }
  50.  
  51. BNEQ.EQ
  52. {
  53.  '-(ID-(Wu-1.28)/(Lu-0.69) * 
  54.  IFTE( VDS > 0 AND VGS > VTNB, 
  55.  IFTE(VDS < VGS-VTNB, 
  56.  BNK/2 * ( 2*(VGS-VTNB) * VDS - SQ(VDS)),
  57.  BNK/2 * SQ(VGS-VTNB))
  58.  ,0))'
  59.  { ID Wu Lu VDS VGS { "BN" \<< WNEQ.EQ STEQ 30 MENU \>>}  }
  60. }
  61.  
  62. WPEQ.EQ
  63. {
  64.  '-(ID-(Wu-1.56)/(Lu-0.50) * 
  65.  IFTE( VDS > 0 AND VGS > VTPW, 
  66.  IFTE(VDS < VGS-VTPW, 
  67.  WPK/2 * ( 2*(VGS-VTPW) * VDS - SQ(VDS)),
  68.  WPK/2 * SQ(VGS-VTPW))
  69.  ,0))'
  70.  { ID Wu Lu VDS VGS { "WP" \<< BPEQ.EQ STEQ 30 MENU \>>}  }
  71.  
  72. }
  73.  
  74. BPEQ.EQ
  75. {
  76.  '-(ID-(Wu-1.32)/(Lu-0.35) * 
  77.  IFTE( VDS > 0 AND VGS > VTPB, 
  78.  IFTE(VDS < VGS-VTPB, 
  79.  BPK/2 * ( 2*(VGS-VTPB) * VDS - SQ(VDS)),
  80.  BPK/2 * SQ(VGS-VTPB))
  81.  ,0))'
  82.  { ID Wu Lu VDS VGS { "BP" \<< WPEQ.EQ STEQ 30 MENU \>>}  }
  83.  
  84. }
  85.  
  86. @ Some process related constants: the Vt and K' for the different devices.  
  87.  
  88. VTNW            @ Vt for the worst case n-channel device
  89. 0.9
  90.  
  91. WNK             @ K' for the worst case n-channel device
  92. 40E-6
  93.  
  94. VTNB            @ Vt for the best case n-channel device
  95. 0.7
  96.  
  97. BNK             @ K' for the best case n-channel device
  98. 66E-6
  99.  
  100. VTPW            @ Vt for the worst case p-channel device
  101. 0.7
  102.  
  103. WPK             @ K' for the worst case p-channel device
  104. 12E-6
  105.  
  106. VTPB            @ Vt for the best case p-channel device
  107. 0.7
  108.  
  109. BPK             @ K' for the best case p-channel device
  110. 22E-6
  111.  
  112.  
  113. @ Using the FET models.
  114.  
  115. @ First, enter the MOS directory by pressing [VAR] {MOS}.  If you are
  116. @ already in the MOS directory that is unnecessary
  117.  
  118. @ Press [CST] to bring up the custom menu to select your model
  119.  
  120. @ Pressing {WN} for example puts you in the Solver menu with the following 
  121. @ solver variables:
  122.  
  123. @ {  ID  }  {  Wu  }   {  Lu  }   { VDS  }   {  VGS  }   
  124.  
  125. @ The process related variables VT and K are already stored and need 
  126. @ not be worried about.  The other five variables may be stored or solved 
  127. @ for.  To solve for any of these variable you must first enter the other 
  128. @ four known variables and then solve for the unknown.
  129.  
  130. @ For example, to solve for Wu given the other values:
  131.  
  132. @ 1E-3 {ID}          stores 1mA as the drain current
  133. @ 1.6  {Lu}          stores 1.6 microns as the gate length
  134. @ 0.5  {VDS}         stores 0.5V into Vds; the source drain voltage
  135. @ 4.5  {VGS}         stores 4.5V into Vgs; the gate voltage
  136.  
  137. @ [SHIFT] {Wu}        solves for the width: 19.28 microns with the
  138. @             given process parameters
  139.  
  140. @ Now to solve for the best case VDS given the size you just solved for 
  141. @ press:
  142.  
  143. @ {WN}          change to the best case model
  144. @ [SHIFT] {VDS}        solve for the VDS: Vds is now only 0.2V
  145.  
  146. @ You can also solve for any of the other variables.
  147.  
  148.  
  149. @ Advanced Example
  150.  
  151. @ The power of the 48SX is not just limited to storing values into the 
  152. @ variables but you can also store expressions into them. For example,
  153. @ solving a transistor pulling down on
  154. @ a resistor connected from the drain of the transistor to VDD can
  155. @ be handled by storing an expression into ID.
  156. @ In this example ID is also given by: (VDD-VDS)/R   
  157.  
  158. @ To calculate the value of VDS of a 20u wide by 1.6u long transistor 
  159. @ with a VGS of 2V and driving a 20Kohm resistor :
  160.  
  161.  
  162. @  [CST] {WN}             select the worst case model
  163.  
  164. @ '(VDD-VDS)/R  [ENTER]  {ID}    store an expression into ID
  165. @ Press [->] [SOLVE]          (Blue 7) The 48SX then rearranges the soft keys: 
  166. @                 ID is replaced by VDD and R.
  167.  
  168. @  5.0  {VDD}            store 5V into VDD (for example)
  169. @  20000  {R}            store 20K into R
  170. @  20  {Wu}            store 20 microns into Wu
  171. @  1.6  {Lu}            store 1.6 microns into Lu
  172. @  2  {VGS}            store 2V into VGS
  173. @  [shift]  {VDS}        solve for VDS
  174. @                       the 48SX returns 0.413V  
  175.  
  176. @  {WN}                switch to best case
  177. @  [shift]  {VDS}        solve for VDS
  178. @                       the 48SX returns 0.145V 
  179.  
  180. @ To return the soft keys to normal store 0 into ID:    0 'ID [STO]
  181. @ and press [->] [SOLVE]
  182.  
  183. @ Have fun
  184.  
  185.  
  186.